 #define  _CRT_SECURE_NO_WARNINGS 1


#include <iostream>
#include <vector>
using namespace std;
//int main(void)
//{
//	vector<int>array;
//	array.push_back(100);
//	array.push_back(300);
//	array.push_back(300);
//	array.push_back(300);
//	array.push_back(300);
//	array.push_back(500);
//	vector<int>::iterator itor;
//	for (itor = array.begin(); itor != array.end(); itor++)
//	{
//		if (*itor == 300)
//		{
//			itor = array.erase(itor);
//		}
//	}
//	for (itor = array.begin(); itor != array.end(); itor++)
//	{
//		cout << *itor << "";
//	}
//	return 0;
//}




class A {
public:
	A() { p(); }
	virtual void p() { printf("A"); }
	virtual ~A() { p(); }
};
class B :public A {
public:
	B()
	{ 
		p(); 
	}
	void p() 
	{ 
		printf("B");
	}
	~B() 
	{ 
		p();
	}
};
int main(int, char**) {
	A* a = new B();
	delete a;
}